package com.gitee.slowcreator.http.params;

import com.gitee.slowcreator.http.constant.ScParamsTypeConstant;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Map;

/**
 * @author zxw
 * @date 2023/1/6 下午10:58
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ScReturn implements ScBase {

    /**
     * 下载文件的数据/或者是返回数据都放在这
     * 如果遇到异常未设置抛出异常 这里会存放通过 e.getMessage() 获取的异常信息
     * 非完整异常 完整异常会打印error级别异常日志
     */
    private byte[] data;

    /**
     * 请求状态 是否成功
     */
    private boolean success;

    /**
     * 是否出现异常
     */
    private boolean exception = false;

    /**
     * response的contentType
     */
    private String contentType;

    /**
     * 返回的header
     */
    private Map<String, String> returnHeader;

    /**
     * 解析后的数据
     */
    private ScParseResult parseData;

    @Override
    public String type() {

        return ScParamsTypeConstant.RETURN;
    }
}
